package com.qianfeng.excel.pojo;

//
//                            _ooOoo_  
//                           o8888888o  
//                           88" . "88  
//                           (| -_- |)  
//                            O\ = /O  
//                        ____/`---'\____  
//                      .   ' \\| |// `.  
//                       / \\||| : |||// \  
//                     / _||||| -:- |||||- \  
//                       | | \\\ - /// | |  
//                     | \_| ''\---/'' | |  
//                      \ .-\__ `-` ___/-. /  
//                   ___`. .' /--.--\ `. . __  
//                ."" '< `.___\_<|>_/___.' >'"".  
//               | | : `- \`.;`\ _ /`;.`/ - ` : | |  
//                 \ \ `-. \_ __\ /__ _/ .-` / /  
//         ======`-.____`-.___\_____/___.-`____.-'======  
//                            `=---='  
//  
//         .............................................  
//                  佛祖镇楼                  BUG辟易  
//          佛曰:  
//                  写字楼里写字间，写字间里程序员；  
//                  程序人员写程序，又拿程序换酒钱。  
//                  酒醒只在网上坐，酒醉还来网下眠；  
//                  酒醉酒醒日复日，网上网下年复年。  
//                  但愿老死电脑间，不愿鞠躬老板前；  
//                  奔驰宝马贵者趣，公交自行程序员。  
//                  别人笑我忒疯癫，我笑自己命太贱；  
//  


import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.qianfeng.excel.utils.Utils;

import java.util.List;

/**
 * Created by Jackiechan on 2022/4/24 0:29
 *
 * @author Jackiechan
 * @version 1.0
 * @since 1.0
 */
public class PersonData {
    //    @ExcelIgnore
//    private PersonData fangzhu;
    @ExcelIgnore
    private List<PersonData> zhuhuList;

//    public PersonData getFangzhu() {
//        return fangzhu;
//    }
//
//    public void setFangzhu(PersonData fangzhu) {
//        this.fangzhu = fangzhu;
//    }


    private String suoshushequ;

    private String xiaoqumingcheng;


    public String getSuoshushequ() {
        return suoshushequ;
    }

    public void setSuoshushequ(String suoshushequ) {
        this.suoshushequ = suoshushequ;
    }

    public String getXiaoqumingcheng() {
        return xiaoqumingcheng;
    }

    public void setXiaoqumingcheng(String xiaoqumingcheng) {
        this.xiaoqumingcheng = xiaoqumingcheng;
    }

    private String chanquanrenmingzi;

    private String chanquanrenzhengjian;

    private String chanquanrenhaoma;
    private String chanquanrenhuji;

    public String getChanquanrenmingzi() {
        return chanquanrenmingzi;
    }

    public void setChanquanrenmingzi(String chanquanrenmingzi) {
        this.chanquanrenmingzi = chanquanrenmingzi;
    }

    public String getChanquanrenzhengjian() {
        return chanquanrenzhengjian;
    }

    public void setChanquanrenzhengjian(String chanquanrenzhengjian) {
        this.chanquanrenzhengjian = chanquanrenzhengjian;
    }

    public String getChanquanrenhaoma() {
        return chanquanrenhaoma;
    }

    public void setChanquanrenhaoma(String chanquanrenhaoma) {
        this.chanquanrenhaoma = chanquanrenhaoma;
    }

    public String getChanquanrenhuji() {
        return chanquanrenhuji;
    }

    public void setChanquanrenhuji(String chanquanrenhuji) {
        this.chanquanrenhuji = chanquanrenhuji;
    }

    public String getYangquanqk() {
        return yangquanqk;
    }

    public void setYangquanqk(String yangquanqk) {
        this.yangquanqk = yangquanqk;
    }

    public List<PersonData> getZhuhuList() {
        return zhuhuList;
    }

    public void setZhuhuList(List<PersonData> zhuhuList) {
        this.zhuhuList = zhuhuList;
    }

    @ExcelIgnore
    private String fangzizonghedizhi;//房子的综合地址,就是几号楼几单元几户

    public String getFangzizonghedizhi() {
        return fangzizonghedizhi;
    }

    public void setFangzizonghedizhi(String fangzizonghedizhi) {
        this.fangzizonghedizhi = fangzizonghedizhi;
    }


    /**
     * 是不是户主
     *
     * @return
     */
    public boolean isMaster() {
        return "F".equalsIgnoreCase(renbiao);
    }

    @ExcelProperty(value = "采集/更新\n" +
            "日期")
    private String collDate;//采集日期

    @ExcelProperty(value = "楼\n" +
            "号")
    private String buildingNum;


    @ExcelProperty(value = "单\n" +
            "元")
    private String danyuan;


    @ExcelProperty(value = "门\n" +
            "号")
    private String menhao;

    @ExcelProperty(value = "户型")
    private String huxing;

    @ExcelProperty(value = "面积")
    private String mianji;

    @ExcelProperty(value = "房屋产权类型")
    private String chanquanleixing;

    @ExcelProperty(value = "房屋\n" +
            "用途")
    private String yongtu;

    @ExcelProperty(value = "出租\n" +
            "类型")
    private String chuzuleixing;

    @ExcelProperty(value = "常住\n" +
            "数量")
    private String changzhuleixing;

    @ExcelProperty(value = "居住编号")
    private String juzhubianhao;

    @ExcelProperty(value = "房标")
    private String fangbiao;

    @ExcelProperty(value = "人标")
    private String renbiao;

    @ExcelProperty(value = "家庭\n" +
            "关系")
    private String jiatingguanxi;

    @ExcelProperty(value = "姓名")
    private String xingming;

    @ExcelProperty(value = "身份证号码")
    private String shenfenzheng;

    @ExcelProperty(value = "省")
    private String sheng;

    @ExcelProperty(value = "户籍地址")
    private String huji;

    @ExcelProperty(value = "电话")
    private String dianhua;

    @ExcelProperty(value = "户籍\n" +
            "类型")
    private String hujileixing;

    @ExcelProperty(value = "租赁截止日期")
    private String jiezhiriqi;

    @ExcelProperty(value = "备注")
    private String beizhu;

    @ExcelProperty(value = "婚姻状况")
    private String hunyinzhuangkuang;

    @ExcelProperty(value = "政治面貌")
    private String zhengzhimianmao;

    @ExcelProperty(value = "文化程度")
    private String wenhuachengdu;

    @ExcelProperty(value = "车辆号牌")
    private String chepai;


    @ExcelProperty(value = "单位\\学校名称")
    private String danwei;


    @ExcelProperty(value = "所属行业")
    private String hangye;


    @ExcelProperty(value = "是否关注人群或重点人")
    private String zhongdianguanzhu;


    @ExcelProperty(value = "关注类型")
    private String guanzhuleixing;


    @ExcelProperty(value = "级别")
    private String jibie;


    @ExcelProperty(value = "关注情况说明")
    private String guanzhuqingkuang;


    @ExcelProperty(value = "是否养犬")
    private String yangquan;


    @ExcelProperty(value = "养犬情况说明")
    private String yangquanqk;


    @ExcelProperty(value = "是否低小慢爱好者")
    private String dixiaman;


    @ExcelProperty(value = "低小慢情况说明")
    private String dixiaomanqk;


    @ExcelProperty(value = "曾用名")
    private String cengyongming;


    @ExcelProperty(value = "宗教\n" +
            "信仰")
    private String zongjiao;


    @ExcelProperty(value = "微信\n" +
            "号码")
    private String weixinhaoma;


    @ExcelProperty(value = "中介名称")
    private String zhongjiemingcheng;


    @ExcelProperty(value = "中介负责人姓名")
    private String zjfuzeren;


    @ExcelProperty(value = "中介证件号码")
    private String zjzhengjian;


    @ExcelProperty(value = "中介户籍地址")
    private String zjhuji;


    @ExcelProperty(value = "中介电话")
    private String zjdianhua;


    private String jsbYiban = "";

    private String jsbZhongdian = "";

    private String qkWunian = "";

    private String qkJianguan = "";

    private String qkZhongdian = "";

    private String qkLiudonggaowei = "";
//    private String jsbYiban = "£ 一般";
//
//    private String jsbZhongdian = "£ 重点";
//
//    private String qkWunian = "£ 刑满释放不满五年";
//
//    private String qkJianguan = "£ 所在监管";
//
//    private String qkZhongdian = "£ 刑事重点人";
//
//    private String qkLiudonggaowei = "£ 流动高危人员";


    public String getJsbYiban() {
        return jsbYiban;
    }

    public void setJsbYiban(String jsbYiban) {
        this.jsbYiban = jsbYiban;
    }

    public String getJsbZhongdian() {
        return jsbZhongdian;
    }

    public void setJsbZhongdian(String jsbZhongdian) {
        this.jsbZhongdian = jsbZhongdian;
    }

    public String getQkWunian() {
        return qkWunian;
    }

    public void setQkWunian(String qkWunian) {
        this.qkWunian = qkWunian;
    }

    public String getQkJianguan() {
        return qkJianguan;
    }

    public void setQkJianguan(String qkJianguan) {
        this.qkJianguan = qkJianguan;
    }

    public String getQkZhongdian() {
        return qkZhongdian;
    }

    public void setQkZhongdian(String qkZhongdian) {
        this.qkZhongdian = qkZhongdian;
    }

    public String getQkLiudonggaowei() {
        return qkLiudonggaowei;
    }

    public void setQkLiudonggaowei(String qkLiudonggaowei) {
        this.qkLiudonggaowei = qkLiudonggaowei;
    }

    private byte[] zhaopian;


    public String getCollDate() {
        return collDate;
    }

    public void setCollDate(String collDate) {
        this.collDate = collDate;
    }

    public String getBuildingNum() {
        return buildingNum;
    }

    public void setBuildingNum(String buildingNum) {
        this.buildingNum = buildingNum;
    }

    public String getDanyuan() {
        return danyuan;
    }

    public void setDanyuan(String danyuan) {
        this.danyuan = danyuan;
    }

    public String getMenhao() {
        return menhao;
    }

    public void setMenhao(String menhao) {
        this.menhao = menhao;
    }

    public String getHuxing() {
        return huxing;
    }

    public void setHuxing(String huxing) {
        this.huxing = huxing;
    }

    public String getMianji() {
        return mianji;
    }

    public void setMianji(String mianji) {
        this.mianji = mianji;
    }

    public String getChanquanleixing() {
        return chanquanleixing;
    }

    public void setChanquanleixing(String chanquanleixing) {
        this.chanquanleixing = chanquanleixing;
    }

    public String getYongtu() {
        return yongtu;
    }

    public void setYongtu(String yongtu) {
        this.yongtu = yongtu;
    }

    public String getChuzuleixing() {
        return chuzuleixing;
    }

    public void setChuzuleixing(String chuzuleixing) {
        this.chuzuleixing = chuzuleixing;
    }

    public String getChangzhuleixing() {
        return changzhuleixing;
    }

    public void setChangzhuleixing(String changzhuleixing) {
        this.changzhuleixing = changzhuleixing;
    }

    public String getJuzhubianhao() {
        return juzhubianhao;
    }

    public void setJuzhubianhao(String juzhubianhao) {
        this.juzhubianhao = juzhubianhao;
    }

    public String getFangbiao() {
        return fangbiao;
    }

    public void setFangbiao(String fangbiao) {
        this.fangbiao = fangbiao;
    }

    public String getRenbiao() {
        return renbiao;
    }

    public void setRenbiao(String renbiao) {
        this.renbiao = renbiao;
    }

    public String getJiatingguanxi() {
        return jiatingguanxi;
    }

    public void setJiatingguanxi(String jiatingguanxi) {
        this.jiatingguanxi = jiatingguanxi;
    }

    public String getXingming() {
        return xingming;
    }

    public void setXingming(String xingming) {
        this.xingming = xingming;
    }

    public String getShenfenzheng() {
        return shenfenzheng;
    }

    public void setShenfenzheng(String shenfenzheng) {
        this.shenfenzheng = shenfenzheng;
    }

    public String getSheng() {
        return sheng;
    }

    public void setSheng(String sheng) {
        this.sheng = sheng;
    }

    public String getHuji() {
        return huji;
    }

    public void setHuji(String huji) {
        this.huji = huji;
    }

    public String getDianhua() {
        return dianhua;
    }

    public void setDianhua(String dianhua) {
        this.dianhua = dianhua;
    }

    public String getHujileixing() {
        return hujileixing;
    }

    public void setHujileixing(String hujileixing) {
        this.hujileixing = hujileixing;
    }

    public String getJiezhiriqi() {
        return jiezhiriqi;
    }

    public void setJiezhiriqi(String jiezhiriqi) {
        this.jiezhiriqi = jiezhiriqi;
    }

    public String getBeizhu() {
        return beizhu;
    }

    public void setBeizhu(String beizhu) {
        this.beizhu = beizhu;
    }

    public String getHunyinzhuangkuang() {
        return hunyinzhuangkuang;
    }

    public void setHunyinzhuangkuang(String hunyinzhuangkuang) {
        this.hunyinzhuangkuang = hunyinzhuangkuang;
    }

    public String getZhengzhimianmao() {
        return zhengzhimianmao;
    }

    public void setZhengzhimianmao(String zhengzhimianmao) {
        this.zhengzhimianmao = zhengzhimianmao;
    }

    public String getWenhuachengdu() {
        return wenhuachengdu;
    }

    public void setWenhuachengdu(String wenhuachengdu) {
        this.wenhuachengdu = wenhuachengdu;
    }

    public String getChepai() {
        return chepai;
    }

    public void setChepai(String chepai) {
        this.chepai = chepai;
    }

    public String getDanwei() {
        return danwei;
    }

    public void setDanwei(String danwei) {
        this.danwei = danwei;
    }

    public String getHangye() {
        return hangye;
    }

    public void setHangye(String hangye) {
        this.hangye = hangye;
    }

    public String getZhongdianguanzhu() {
        return zhongdianguanzhu;
    }

    public void setZhongdianguanzhu(String zhongdianguanzhu) {
        this.zhongdianguanzhu = zhongdianguanzhu;
    }

    public String getGuanzhuleixing() {
        return guanzhuleixing;
    }

    public void setGuanzhuleixing(String guanzhuleixing) {
        this.guanzhuleixing = guanzhuleixing;
    }

    public String getJibie() {
        return jibie;
    }

    public void setJibie(String jibie) {
        this.jibie = jibie;

        switch (getGuanzhuleixing()) {
            case "精神病":
                switch (jibie) {

                    case "一般":
                        setJsbYiban("*");
                        break;
                    case "重点":
                        setJsbZhongdian("*");
                        break;
                }

                break;

            case "前科":
                switch (jibie) {
                    case "刑满释放不满五年":
                    case "刑满释放不满5年":
                        setQkWunian("*");
                        break;
                    case "所外监管":
                        setQkJianguan("*");
                        break;
                    case "刑事重点人":
                    case "刑事重点人员":
                        setQkZhongdian("*");
                        break;
                    case "流动高危人员":
                    case "流动高危人":
                        setQkLiudonggaowei("*");
                        break;


                }

                break;
        }
    }
//    public void setJibie(String jibie) {
//        this.jibie = jibie;
//
//        switch (getGuanzhuleixing()) {
//            case "精神病":
//                switch (jibie) {
//
//                    case "一般":
//                        setJsbYiban("R 一般");
//                        break;
//                    case "重点":
//                        setJsbZhongdian("R 重点");
//                        break;
//                }
//
//                break;
//
//            case "前科":
//                switch (jibie) {
//                    case "刑满释放不满五年":
//                    case "刑满释放不满5年":
//                        setQkWunian("R 刑满释放不满五年");
//                        break;
//                    case "所在监管":
//                        setQkJianguan("R 所在监管");
//
//                        break;
//                    case "刑事重点人":
//                    case "刑事重点人员":
//                        setQkZhongdian("R 刑事重点人");
//                        break;
//                    case "流动高危人员":
//                    case "流动高危人":
//                        setQkLiudonggaowei("R 流动高危人员");
//                        break;
//
//
//                }
//
//                break;
//        }
//    }

    public String getGuanzhuqingkuang() {
        return guanzhuqingkuang;
    }

    public void setGuanzhuqingkuang(String guanzhuqingkuang) {
        this.guanzhuqingkuang = guanzhuqingkuang;
    }

    public String getYangquan() {
        return yangquan;
    }

    public void setYangquan(String yangquan) {
        this.yangquan = yangquan;
    }

    public String getDixiaman() {
        return dixiaman;
    }

    public void setDixiaman(String dixiaman) {
        this.dixiaman = dixiaman;
    }

    public String getDixiaomanqk() {
        return dixiaomanqk;
    }

    public void setDixiaomanqk(String dixiaomanqk) {
        this.dixiaomanqk = dixiaomanqk;
    }

    public String getCengyongming() {
        return cengyongming;
    }

    public void setCengyongming(String cengyongming) {
        this.cengyongming = cengyongming;
    }

    public String getZongjiao() {
        return zongjiao;
    }

    public void setZongjiao(String zongjiao) {
        this.zongjiao = zongjiao;
    }

    public String getWeixinhaoma() {

        if (shenfenzheng != null && !"".equals(shenfenzheng.trim())) {

            try {
                String bitrhYear = shenfenzheng.substring(6, 10);
                String bitrhMonth = shenfenzheng.substring(10, 12);
                String bitrhDay = shenfenzheng.substring(12, 14);

                if (Utils.wxnljqd.equalsIgnoreCase("nian")) {
                    if (Utils.getYear() - Integer.parseInt(bitrhYear) >= Utils.age) {
                        return dianhua;
                    }
                } else if (Utils.wxnljqd.equalsIgnoreCase("yue")) {
                    if (Utils.getYear() - Integer.parseInt(bitrhYear) > Utils.age) {
                        return dianhua;
                    } else if (Utils.getYear() - Integer.parseInt(bitrhYear) == Utils.age
                            && Utils.getMonth() - Integer.parseInt(bitrhMonth) >= -1) {
                        return dianhua;
                    }
                }else{
                    if (Utils.getYear() - Integer.parseInt(bitrhYear) > Utils.age) {
                        return dianhua;
                    } else if (Utils.getYear() - Integer.parseInt(bitrhYear) == Utils.age
                            && Utils.getMonth() - Integer.parseInt(bitrhMonth) > -1) {
                        return dianhua;
                    }else if (Utils.getYear() - Integer.parseInt(bitrhYear) == Utils.age
                            && Utils.getMonth() - Integer.parseInt(bitrhMonth) == -1
                            && Utils.getDay() - Integer.parseInt(bitrhDay) >= 0) {
                        return dianhua;
                    }
                }

            } catch (Exception e) {
                e.printStackTrace();
            }
        }
        return weixinhaoma;
    }

    public void setWeixinhaoma(String weixinhaoma) {
        this.weixinhaoma = weixinhaoma;
    }

    public String getZhongjiemingcheng() {
        return zhongjiemingcheng;
    }

    public void setZhongjiemingcheng(String zhongjiemingcheng) {
        this.zhongjiemingcheng = zhongjiemingcheng;
    }

    public String getZjfuzeren() {
        return zjfuzeren;
    }

    public void setZjfuzeren(String zjfuzeren) {
        this.zjfuzeren = zjfuzeren;
    }

    public String getZjzhengjian() {
        return zjzhengjian;
    }

    public void setZjzhengjian(String zjzhengjian) {
        this.zjzhengjian = zjzhengjian;
    }

    public String getZjhuji() {
        return zjhuji;
    }

    public void setZjhuji(String zjhuji) {
        this.zjhuji = zjhuji;
    }

    public String getZjdianhua() {
        return zjdianhua;
    }

    public void setZjdianhua(String zjdianhua) {
        this.zjdianhua = zjdianhua;
    }

    public byte[] getZhaopian() {
        return zhaopian;
    }

    public void setZhaopian(byte[] zhaopian) {
        this.zhaopian = zhaopian;
    }

    @Override
    public String toString() {
        return "PersonData{" +
                "collDate='" + collDate + '\'' +
                ", buildingNum='" + buildingNum + '\'' +
                ", danyuan='" + danyuan + '\'' +
                ", menhao='" + menhao + '\'' +
                ", huxing='" + huxing + '\'' +
                ", mianji='" + mianji + '\'' +
                ", chanquanleixing='" + chanquanleixing + '\'' +
                ", yongtu='" + yongtu + '\'' +
                ", chuzuleixing='" + chuzuleixing + '\'' +
                ", changzhuleixing='" + changzhuleixing + '\'' +
                ", juzhubianhao='" + juzhubianhao + '\'' +
                ", fangbiao='" + fangbiao + '\'' +
                ", renbiao='" + renbiao + '\'' +
                ", jiatingguanxi='" + jiatingguanxi + '\'' +
                ", xingming='" + xingming + '\'' +
                ", shenfenzheng='" + shenfenzheng + '\'' +
                ", sheng='" + sheng + '\'' +
                ", huji='" + huji + '\'' +
                ", dianhua='" + dianhua + '\'' +
                ", hujileixing='" + hujileixing + '\'' +
                ", jiezhiriqi='" + jiezhiriqi + '\'' +
                ", beizhu='" + beizhu + '\'' +
                ", hunyinzhuangkuang='" + hunyinzhuangkuang + '\'' +
                ", zhengzhimianmao='" + zhengzhimianmao + '\'' +
                ", wenhuachengdu='" + wenhuachengdu + '\'' +
                ", chepai='" + chepai + '\'' +
                ", danwei='" + danwei + '\'' +
                ", hangye='" + hangye + '\'' +
                ", zhongdianguanzhu='" + zhongdianguanzhu + '\'' +
                ", guanzhuleixing='" + guanzhuleixing + '\'' +
                ", jibie='" + jibie + '\'' +
                ", guanzhuqingkuang='" + guanzhuqingkuang + '\'' +
                ", yangquan='" + yangquan + '\'' +
                ", dixiaman='" + dixiaman + '\'' +
                ", dixiaomanqk='" + dixiaomanqk + '\'' +
                ", cengyongming='" + cengyongming + '\'' +
                ", zongjiao='" + zongjiao + '\'' +
                ", weixinhaoma='" + weixinhaoma + '\'' +
                ", zhongjiemingcheng='" + zhongjiemingcheng + '\'' +
                ", zjfuzeren='" + zjfuzeren + '\'' +
                ", zjzhengjian='" + zjzhengjian + '\'' +
                ", zjhuji='" + zjhuji + '\'' +
                ", zjdianhua='" + zjdianhua + '\'' + '}';
    }


}
